package com.ysd.lis.service.lab;


import com.baomidou.mybatisplus.extension.service.IService;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.ysd.common.Result;
import com.ysd.lis.entity.lab.LabMaininfo;
import com.ysd.lis.entity.lab.LabRptmain;
import com.ysd.lis.request.BacGenerateReportRequestParam;

/**
 * <p>
 * 检验报告记录 服务类
 * </p>
 *
 * @author Cfz
 * @since 2023-12-26
 */
public interface LabRptmainService extends IService<LabRptmain> {
    /*
     *微生物生成报告
     * */
    Result BacGenerateReport(BacGenerateReportRequestParam input) throws JsonProcessingException;

    /*
     *微生物生成初级报告
     * */
    Result BacGenerateFirstReport(BacGenerateReportRequestParam input);

    /*
     *微生物生成二级报告
     * */
    Result BacGenerateSecondReport(BacGenerateReportRequestParam input);

    /*自动生成报告*/
    Result GenerateRptmainAutoAsync();

    void LisGenerateRptmainAutoAsync(LabMaininfo m);

    /*更换报告单重新生成报告-原有报告单删除*/
    Result ReGenerateRptmain();

    /*微生物重打标签*/
    Result RePrintLabel(String sltWorkFlowNo);
}
